#include <REGX52.H>

/**
  * @brief 外部中断初始化
  * @param  无
  * @retval 无
  */
void Int0_Init(void)
{
    // TCON（定时器控制寄存器，可位寻址）
    // IT0=1——下降沿触发；IT0=0——低电平触发；
    IT0=1;
    // IE0（中断请求标志位）
    IE0=0;
    
    // IE（中断允许寄存器，可位寻址）
    // EX0（中断允许控制位）：EX0=1，允许中断；EX0=0，禁止中断。
    EX0=1;
    // EA（CPU的总中断允许控制位）：EA=1,CPU开放中断，EA=O,CPU屏蔽所有的中断
    EA=1;
    
    // IP（中断优先级控制寄存器，可位寻址）
    // PX0H,PX0（外部中断0优先级控制位）
    // 当PX0H=0且PX0=0时，外部中断0为最低优先级中断(优先级0)
    // 当PX0H=0且PX0=1时，外部中断0为较低优先级中断(优先级1)
    // 当PX0H=1且PX0=0时，外部中断0为较高优先级中断(优先级2)
    // 当PX0H=1且PX0=1时，外部中断0为最高优先级中断(优先级3)
    PX0=1;
}

/**
  * @brief 外部中断0终端执行程序
  * @param  无
  * @retval 无
  */
//void Int0_Routine(void)     interrupt 0
//{
//    
//}